In [1]:
from pathlib import Path

from ipyniivue import download_dataset

BASE_API_URL = "https://niivue.com/demos/images/"
DATA_FOLDER = Path("images")

# Download data for example
download_dataset(
    BASE_API_URL,
    DATA_FOLDER,
    files=[
        "mni152.nii.gz",
        "hippo.nii.gz",
    ],
)
mni152.nii.gz already exists.
hippo.nii.gz already exists.
Dataset downloaded successfully to images.
In [2]:
try:
    from ipylab import JupyterFrontEnd, SplitPanel
except ModuleNotFoundError:
    !pip install ipylab
    from ipylab import JupyterFrontEnd, SplitPanel

from ipyniivue import NiiVue, SliceType

# this example needs to have ipylab installed and only runs in JupyterLab.
volumes = [
    {
        "path": DATA_FOLDER / "mni152.nii.gz",
        "colormap": "gray",
        "opacity": 1.0,
    },
    {
        "path": DATA_FOLDER / "hippo.nii.gz",
        "colormap": "red",
        "opacity": 1,
    },
]
nv = NiiVue(slice_type=SliceType.MULTIPLANAR)
nv.load_volumes(volumes)


app = JupyterFrontEnd()
split_panel = SplitPanel()

# add the widgets to the split panel
split_panel.children = [nv]

split_panel.title.label = "NiiVue SplitPanel"
split_panel.title.icon_class = "jp-PythonIcon"
split_panel.title.closable = True
app.shell.add(split_panel, "main", {"mode": "split-right"})
print("Split panel created!")

nv.volumes[0].opacity = 0.5
nv.volumes[1].colormap = "green"
Split panel created!